package utility_jwt

import (
	"Sailor/app/Sailor-console-server/internal/model/entity"
	"github.com/gogf/gf/v2/os/gctx"
	"github.com/golang-jwt/jwt/v5"
)

// JWTClaims represents the custom claims for the JWT token
type JWTClaims struct {
	UserInfo entity.SysUser `json:"userInfo"`
	jwt.RegisteredClaims
}

const (
	// CtxUsername is the context key for storing the username
	CtxUsername gctx.StrKey = "username"
	// JwtSecretKey is the secret key for JWT signing and validation
	// Note: In production, this should be replaced with a secure key
	JwtSecretKey = "your-secret-key-here"
)
